[libc++] Tolerate presence of __deallocate macro Summary: On Windows the identifier `__deallocate` is defined as a macro by one of the Windows system headers. Previously libc++ worked around this by `#undef __deallocate` and generating a warning. However this causes the WIN32 version of `__threading_support` to always generate a warning on Windows. This is not OK. This patch renames all usages of `__deallocate` internally as to not conflict with the macro. Reviewers: mclow.lists, majnemer, rnk, rsmith, smeenai, compnerd Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D28426 git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@291332 91177308-0d34-0410-b5e6-96231b3b80d8 
diff --git a/include/new b/include/new index 442e113..6589f16 100644 --- a/include/new +++ b/include/new 
@@ -92,8 +92,6 @@  #include <cstdlib>  #endif   -#include <__undef___deallocate> -  #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)  #pragma GCC system_header  #endif @@ -217,7 +215,7 @@  #endif  }   -inline _LIBCPP_INLINE_VISIBILITY void __deallocate(void *__ptr) { +inline _LIBCPP_INLINE_VISIBILITY void __libcpp_deallocate(void *__ptr) {  #ifdef _LIBCPP_HAS_NO_BUILTIN_OPERATOR_NEW_DELETE  ::operator delete(__ptr);  #else